On Relational Analysis of Algebraic Datatypes
نویسندگان
چکیده
We present a technique that enables the use of finite model finding to check the satisfiability of certain formulas whose intended models are infinite. Such formulas arise when using the language of sets and relations to reason about structured values such as algebraic datatypes. The key idea of our technique is to identify a natural syntactic class of formulas in relational logic for which reasoning about infinite structures can be reduced to reasoning about finite structures. As a result, when a formula belongs to this class, we can use existing finite model finding tools to check whether the formula holds in the desired infinite model.
منابع مشابه
Transport of finiteness structures and applications
We describe a general construction of finiteness spaces which subsumes the interpretations of all positive connectors of linear logic. We then show how to apply this construction to prove the existence of least fixpoints for particular functors in the category of finiteness spaces: these include the functors involved in a relational interpretation of lazy recursive algebraic datatypes along the...
متن کاملStrategic Term Rewriting and Its Application to a VDMSL to SQL Conversion
We constructed a tool, called VooDooM, which converts datatypes in VDM-SL into SQL relational data models. The conversion involves transformation of algebraic types to maps and products, and pointer introduction. The conversion is specified as a theory of refinement by calculation. The implementation technology is strategic term rewriting in Haskell, as supported by the Strafunski bundle. Due t...
متن کاملDeriving Law-Abiding Instances
Liquid Haskell augments the Haskell language with theorem proving capabilities, allowing programmers to express and prove class laws. But many of these proofs require routine, boilerplate code and do not scale well, as the size of proof terms can grow superlinearlywith the size of the datatypes involved in the proofs. We present a technique to derive Haskell proof terms by leveraging datatype-g...
متن کاملNonfree Datatypes in Isabelle/HOL - Animating a Many-Sorted Metatheory
Datatypes freely generated by their constructors are well supported in mainstream proof assistants. Algebraic specification languages offer more expressive datatypes on axiomatic means: nonfree datatypes generated from constructors modulo equations. We have implemented an Isabelle/HOL package for nonfree datatypes, without compromising foundations. The use of the package, and its nonfree iterat...
متن کامل(Relational) Programming Laws in the Boom Hierarchy of Types
In this paper we demonstrate that the basic rules and calcu-lational techniques used in two extensively documented program derivation methods can be expressed, and, indeed, can be generalised within a relational theory of datatypes. The two methods to which we refer are the so-called \Bird-Meertens formalism" (see 22]) and the \Dijkstra-Feijen calculus" (see 15]). The current paper forms an abr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005